package com.portalito.jahepi.dto;

import com.portalito.jahepi.Utils;

public class Ticket {
	
	private int id;
	private Usuario usuario;
	private double latitud;
	private double longitud;
	private String fecha;
	private int transno;
	private int tipo;
	private int orden;
	private String dispositivo;
	
	public Ticket(Usuario usuario, double latitud, double longitud, String fecha, int transno, int tipo, int orden, String dispositivo) {
		this.usuario = usuario;
		this.latitud = latitud;
		this.longitud = longitud;
		this.transno = transno;
		this.tipo = tipo;
		this.orden = orden;
		this.fecha = fecha;
		this.dispositivo = dispositivo;
	}
	
	public Ticket(int id, Usuario usuario, double latitud, double longitud, String fecha, int transno, int tipo, int orden, String dispositivo) {
		this.id = id;
		this.usuario = usuario;
		this.latitud = latitud;
		this.longitud = longitud;
		this.transno = transno;
		this.tipo = tipo;
		this.orden = orden;
		this.fecha = fecha;
		this.dispositivo = dispositivo;
	}

	public String getUsuarioId() {
		if(usuario != null) {
			return usuario.getUsuario();
		}
		return "";
	}
	
	public double getLongitud() {
		return longitud;
	}
	
	public double getLatitud() {
		return latitud;
	}

	public String getFecha() {
		return fecha;
	}

	public int getTransno() {
		return transno;
	}

	public int getTipo() {
		return tipo;
	}

	public int getOrden() {
		return orden;
	}
	
	public int getId() {
		return id;
	}

	public String getDispositivo() {
		return dispositivo;
	}
	
	private String getHoraSalida() {
		return Utils.obtenerHora(fecha);
	}
	
	private String getDiaSalida() {
		return Utils.obtenerDia(fecha);
	}
	
	public String toHtml() {
		if(Ticket.esValido(this)) {
			String str = "<b>Fecha:</b> " + getDiaSalida() + "<br/>";
			str += "<b>Hora:</b> " + getHoraSalida() + "<br/>";
			str += "<b>Usuario:</b> " + usuario.getNombre() + "<br/>";
			str += "<b>Transno:</b> " +  transno + "<br/>";
			str += "<b>Tipo:</b> " +  tipo + "<br/>";
			str += "<b>Orden:</b> " +  orden;
			return str;
		}
		return null;	
	}
	
	public static boolean esValido(Ticket ticket) {
		if(ticket != null) {
			if(ticket.transno != 0 && ticket.tipo != 0 && ticket.orden != 0 && ticket.usuario != null) {
				return true;
			}
		}
		return false;
	}
}
